Purna bentuk dan pengendalian ralat XML

Spesifikasi XML mendefiniskan dokumen XML sebagai teks yang purna bentuk, yakni ia menepati keperluan peruturan sintaksis yang terkandung dalam spesifikasi. Senarai tersebut agak panjang; beberapa perkara penting termasuk:

  • Ia mengandungi aksara Unicode sah yang dikodkan dengan betul sahaja.
  • Tiada aksara sintaksis khas seperti "<" dan "&" hadir kecuali apabila menjalankan fungsi membezakan penanda.
  • Teg-teg mula, akhir dan unsur kosong yang mengehadkan unsur bersarang dengan betul dan tidak ada yang tidak hadir atau bertindih.
  • Teg unsur sensitif huruf; teg-teg permulaaan dan akhir perlu sepadan. Nama-nama teg tidak boleh mengandungi aksara-aksara !"#$%&'()*+,/;<=>?@[\]^`{|}~, tidak boleh juga mengandungi aksara ruang, dan tidak boleh bermula dengan "-", ".", atau digit bernombor.
  • Terdapat hanya satu unsur "akar" yang mengandungi semua unsur.

Justeru definisi dokumen XML mengetepikan teks yang melanggar perautuan purna bentuk. Pemproses XML yang menjumpai pelanggaran diwajibkan melapor ralat sedemikian dan berhenti memproses. An XML processor that encounters such a violation is required to report such errors and to cease normal processing. Polisi ini, yang kadang kalanya digelar sebagai drakonian, berlainan dengan perisian yang memproses HTML, yang direka untuk menjana keputusan yang berpatutan mahupun terdapat ralat penanda yang teruk.[11] Polisi XML dalam hal ini pernah dikritik sebagai melanggar Hukum Postel yang menyatakan, "Bersikap konservatif dalam apa yang dihantar; bersifat liberal dalam apa yang diterima".[12]

Rujukan

WikiPedia: XML http://teknologi-maklumat.com/wiki/XML http://www.dblab.ntua.gr/~bikakis/XML%20and%20Sema... http://web.archive.org/web/20110514120305/http://d... http://web.archive.org/web/20110726002036/http://d... http://www.tbray.org/ongoing/When/200x/2003/04/26/... http://www.w3.org/Consortium/Legal/2002/copyright-... http://www.w3.org/International/questions/qa-contr... http://www.w3.org/TR/2006/REC-xml11-20060816/ http://www.w3.org/TR/2008/REC-xml-20081126/ http://www.w3.org/TR/2008/REC-xml-20081126/#NT-Att...